package process

import (
	utils "chatOnline/client/uitls"
	"chatOnline/common/message"
	"encoding/json"
	"fmt"
)

type SmsProcess struct {
}

// 发送群聊/私聊的消息
func (this *SmsProcess) sendGroupMes(content string) (err error) {

	// 1. 创建一个message
	var mes message.Message
	mes.Type = message.SmsMesType

	// 创建一个SmsMes 实例
	var smsMes message.SmsMes
	smsMes.Content = content // 内容
	smsMes.UserId = CurUser.UserId
	smsMes.UserStatus = CurUser.UserStatus

	data, err := json.Marshal(smsMes)
	if err != nil {
		fmt.Println("sendGroupMes json.Marshal err=", err.Error())
		return
	}
	mes.Data = string(data)

	data, err = json.Marshal(mes)
	if err != nil {
		fmt.Println("sendGroupMes json.Marshal err=", err.Error())
		return
	}
	tf := &utils.Transfer{
		Conn: CurUser.Conn,
	}

	err = tf.WritePkg(data)
	if err != nil {
		fmt.Println("sendGroupMes err=", err.Error())
		return
	}
	return
}

// 发送群聊/私聊的消息
func (this *SmsProcess) sendDirectMes(content string, directId int) (err error) {

	// 1. 创建一个message
	var mes message.Message
	mes.Type = message.SmsMesSingeType

	// 创建一个SmsMes 实例
	var smsMes message.SmsMes
	smsMes.Content = content // 内容
	smsMes.UserId = CurUser.UserId
	smsMes.UserStatus = CurUser.UserStatus
	smsMes.DistId = directId

	data, err := json.Marshal(smsMes)
	if err != nil {
		fmt.Println("sendGroupMes json.Marshal err=", err.Error())
		return
	}
	mes.Data = string(data)

	data, err = json.Marshal(mes)
	if err != nil {
		fmt.Println("sendGroupMes json.Marshal err=", err.Error())
		return
	}
	tf := &utils.Transfer{
		Conn: CurUser.Conn,
	}

	err = tf.WritePkg(data)
	if err != nil {
		fmt.Println("sendGroupMes err=", err.Error())
		return
	}
	return
}
